﻿using System;
using System.Collections.Generic;

namespace NP.BPMReportPlatform.GC.Dto
{
    public class GetAccountPeriodAdjustmentApplicationInput : PagedAndSortedRequestDto
    {
        /// <summary>
        /// 是否查询全部
        /// </summary>
        public bool IsQueryAll { get; set; }


        /// <summary>
        /// 流程实例编号
        /// </summary>
        public string InstanceNumber { get; set; }

        /// <summary>
        /// 创建者
        /// </summary>
        public string AddUserName { get; set; }

        /// <summary>
        /// 单据状态
        /// </summary>
        public List<string> OrderStatus { get; set; }

        /// <summary>
        /// 制单日期（开始节点）
        /// </summary>
        public DateTime? StartCreationTime { get; set; }

        /// <summary>
        /// 制单日期（结束节点）
        /// </summary>
        public DateTime? EndCreationTime { get; set; }

        /// <summary>
        /// 组织公司代码
        /// </summary>
        public string CompanyCode { get; set; }

        /// <summary>
        /// 大区
        /// </summary>
        public string Area { get; set; }

        /// <summary>
        /// 信控范围
        /// </summary>
        public string SignalControlRange { get; set; }

        /// <summary>
        /// 调整内容分类
        /// </summary>
        public string AdjustContent { get; set; }

        /// <summary>
        /// 客户编码
        /// </summary>
        public string CustomerCode { get; set; }

        /// <summary>
        /// 客户名称
        /// </summary>
        public string CustomerName { get; set; }

        // /// <summary>
        // /// 备注
        // /// </summary>
        // public string Remark { get; set; }
        //
        // /// <summary>
        // /// 调整情况说明
        // /// </summary>
        // public string Content { get; set; }

        public bool IsAuthAll { get; set; } = false;
    }

    public class AccountPeriodAdjustmentApplicationAuthDto
    {
        /// <summary>
        /// 是否可以查询所有公司
        /// </summary>
        public bool IsCompanyAll { get; set; } = false;
        /// <summary>
        /// 公司代码,逗号隔开
        /// </summary>
        public string CompanyCode { get; set; }
        /// <summary>
        /// 是否可以查询所有大区
        /// </summary>
        public bool IsAreaAll { get; set; } = false;
        /// <summary>
        /// 大区代码，逗号隔开
        /// </summary>
        public string AreaCode { get; set; }
    }

    public class GetAccountPeriodAdjustmentApplicationApproverInput
    {
        public List<string> UserCodes { get; set; } = new List<string>();

        public DateTime? StartTime { get; set; }

        public DateTime? EndTime { get; set; }

        /// <summary>
        /// 1=申请时间  2=操作时间 3=申请时间 或 操作时间
        /// </summary>
        public string SearchTimeType { get; set; } = "1";

        public List<int> OrderStatus { get; set; } = new List<int>();

        public List<int> OpearteType { get; set; } = new List<int>();
    }
}